gtktextdisplay: Optimize GtkStyleContext usage
authorJasper St. Pierre <jstpierre@mecheye.net>
Thu, 27 Nov 2014 02:10:21 +0000 (18:10 -0800)
committerJasper St. Pierre <jstpierre@mecheye.net>
Thu, 27 Nov 2014 02:10:55 +0000 (18:10 -0800)
gtk/gtktextdisplay.c

index 420db81fff9503611840af28151f3c59ccda330d..6be8fe2c8cf677879bc0ab649d93c9b7f2d0c5a6 100644 (file)
@@ -587,14 +587,18 @@ render_para (GtkTextRenderer    *text_renderer,
   screen_width = line_display->total_width;
 
   context = gtk_widget_get_style_context (text_renderer->widget);
-  state = gtk_widget_get_state_flags (text_renderer->widget);
+  gtk_style_context_save (context);
 
+  state = gtk_style_context_get_state (context);
   state |= GTK_STATE_FLAG_SELECTED;
+  gtk_style_context_set_state (context, state);
 
 G_GNUC_BEGIN_IGNORE_DEPRECATIONS
   gtk_style_context_get_background_color (context, state, &selection);
 G_GNUC_END_IGNORE_DEPRECATIONS
 
+ gtk_style_context_restore (context);
+
   do
     {
       PangoLayoutLine *line = pango_layout_iter_get_line_readonly (iter);